import React from 'react';
import PropTypes from 'prop-types';
import cx from 'classnames';
import styles from './index.less';

/**
 * 面板组件
 */
function TabPane({ className, children }) {
    return <div className={cx(className, styles.paneWrap)}>{children}</div>;
}

TabPane.propTypes = {
    className: PropTypes.string, // 当前pane的样式
    children: PropTypes.element.isRequired, // 页面内容
    // key: PropTypes.string.isRequired, // 默认选中的TabPane的key，数据被父组件用了，所以本组件不用，但却不能少
    // name: PropTypes.string.isRequired, // tab的名子，数据被父组件用了，所以本组件不用，但却不能少
};

TabPane.defaultProps = {
    className: '', // tab页面pane的公共样式
};
TabPane.typeName = 'TabPane';
TabPane.instance = (propValue, key, componentName, location, propFullName) => {
    if (propValue[key].type.name !== TabPane.typeName) {
        return new Error(
            `Invalid prop ${propFullName} supplied to ${componentName}; expect ${TabPane.typeName} instead.`
        );
    }
    return null;
};

export default TabPane;
